
#****************************************************************************************************
# File Start!
#***************************************************************************************************/

#*
 #
 #  Copyright (c) 2024-2025 by flechazo. All rights reserved.
 #
 # Author : CarlChai LinFeng Chai flechazo
 # Website: flechazo.mba
 #
 # Change Logs:
 # Date           Author       Notes
 # 2025-06-14     cc          the first version
 #
#/

#****************************************************************************************************
# Include
#***************************************************************************************************/

# ui #
import ctypes
import tkinter as tk
from tkinter import ttk

# submodule #
from display.display_ui_user import display_ui_user_init
from display.display_ui_system import display_ui_system_init
from display.display_ui_icon import display_icon

#****************************************************************************************************
# Define
#***************************************************************************************************/

# icon path #
CCSHORTCUT_ICON_PATH = "database/icon.ico"

#****************************************************************************************************
# Type Define
#***************************************************************************************************/

class display_ui:
    # init #
    def __init__(self,root):
        # root #
        self.root = root
        # root ui init #
        self.root.title("ccshortcut")
        self.root.geometry("720x660")
        self.root.iconbitmap(CCSHORTCUT_ICON_PATH)
        self.root.columnconfigure(0, weight=1)
        self.root.rowconfigure(0, weight=1)
        # icon #
        ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(CCSHORTCUT_ICON_PATH)
        # icon init #
        self.icon = display_icon(root,CCSHORTCUT_ICON_PATH)
        # init #
        self.initialize()
        return

    # init #
    def initialize(self):
        # frame #
        self.main_frame = ttk.Frame(self.root, padding="10")
        self.main_frame.grid(row=0, column=0, sticky=(tk.W, tk.E, tk.N, tk.S))
        self.main_frame.columnconfigure(0, weight=1)
        self.main_frame.rowconfigure(0, weight=1)
        # tag user / system #
        self.notebook = ttk.Notebook(self.main_frame)
        self.notebook.grid(row=0, column=0, sticky=(tk.W, tk.E, tk.N, tk.S))
        self.notebook.columnconfigure(0, weight=1)
        self.notebook.rowconfigure(0, weight=1)
        # user shortcut #
        self.user_frame = display_ui_user_init(self.notebook)
        # system shortcut #
        self.system_frame = display_ui_system_init(self.notebook)
        return True

#****************************************************************************************************
# Global Variable
#***************************************************************************************************/

#****************************************************************************************************
# Function Impletement
#***************************************************************************************************/



#****************************************************************************************************
# exports
#***************************************************************************************************/

#****************************************************************************************************
# File End!
#***************************************************************************************************/
